package com.yungu.swift.lbs.trace.baidu.track;

import com.yungu.swift.lbs.trace.baidu.model.BaseResponse;
import com.yungu.swift.lbs.trace.baidu.model.Point;
import com.yungu.swift.lbs.trace.baidu.model.TrackPoint;

import java.util.List;

/**
 * @description 轨迹查询与纠偏响应类
 * @date 2017/12/2 14:19
 * @version 1.0
 */
public class TrackResponse extends BaseResponse {

    /**
     * 忽略掉page_index，page_size后的轨迹点数量
     */
    private int total;

    /**
     * 返回的结果条数
     */
    private int size;

    /**
     * 此段轨迹的里程数，单位：米
     */
    private double distance;

    /**
     * 此段轨迹的收费里程数，单位：米
     */
    private double tollDistance;

    /**
     * 起点信息
     */
    private Point startPoint;

    /**
     * 终点信息
     */
    private Point endPoint;

    /**
     * 历史轨迹点列表
     */
    private List<TrackPoint> points;

    public TrackResponse(long responseID, int status, String message) {
        super(responseID, status, message);
    }

    public int getTotal() {
        return total;
    }

    public void setTotal(int total) {
        this.total = total;
    }

    public int getSize() {
        return size;
    }

    public void setSize(int size) {
        this.size = size;
    }

    public double getDistance() {
        return distance;
    }

    public void setDistance(double distance) {
        this.distance = distance;
    }

    public double getTollDistance() {
        return tollDistance;
    }

    public void setTollDistance(double tollDistance) {
        this.tollDistance = tollDistance;
    }

    public Point getStartPoint() {
        return startPoint;
    }

    public void setStartPoint(Point startPoint) {
        this.startPoint = startPoint;
    }

    public Point getEndPoint() {
        return endPoint;
    }

    public void setEndPoint(Point endPoint) {
        this.endPoint = endPoint;
    }

    public List<TrackPoint> getPoints() {
        return points;
    }

    public void setPoints(List<TrackPoint> points) {
        this.points = points;
    }

    @Override
    public String toString() {
        return "TrackResponse{" +
                "total=" + total +
                ", size=" + size +
                ", distance=" + distance +
                ", tollDistance=" + tollDistance +
                ", startPoint=" + startPoint +
                ", endPoint=" + endPoint +
                ", points=" + points +
                "} " + super.toString();
    }
}
